@瞌睡虫
3年前 提问
1个回答

如何预防恶意代码的攻击

一颗小胡椒
3年前
官方采纳

恶意代码的预防包括增强安全防范策略与意识、减少漏洞和减轻威胁3个方面的措施。增强安全防范策略与意识是解决恶意软件预防并实施预防性控制的基础,也是减少由于人为错误导致事故的关键。减少漏洞数量将减少一些可能的攻击。实施综合的威胁减轻技术和工具,例如防病毒软件和防火墙,可以防止威胁攻击系统和网络。

  1. 增强安全策略与意识

    常用的恶意软件预防策略主要包括:在使用来自外部的移动介质前,需要进行安全扫描;打开电子邮件文件附件前应进行扫描;禁止通过电子邮件发送或接收特定类型的文件(例如.exe文件);限制或禁止不必要软件的使用,包括易于感染或传播恶意代码的即时消息软件、端到端文件共享服务、可能包含安全漏洞的不需要的服务等;限制用户对管理员权限的使用,有助于控制由用户引入至系统中的恶意软件可使用的特权;限制移动介质的使用(例如软盘、CD、USB闪存盘),特别是在处于高感染风险的系统中;指定在每种类型的系统(例如文件服务器、电子邮件服务器、代理服务器和工作站)和应用(例如电子邮件、Web)上所需的安全防护软件,如防病毒软件、间谍软件检测和删除工具等,并列出软件维护的更新频率、系统扫描范围和频率等方面的要求;只使用组织机构批准的、安全的机制访问外部网络。

    使用时应当具备的安全意识主要包括:不要打开来自于未知或已知发送者的可疑的电子邮件或电子邮件附件;不要单击可疑的Web浏览器弹出窗口;不要访问可能包含恶意内容的网站;不要打开可能同恶意软件相关的.bat、.com、.exe、.pif、.vbs等文件扩展名的文件;不要禁止防病毒软件、恶意软件检测和删除工具、个人防火墙等附加的安全控制机制和软件;不要使用管理员账号用于日常系统操作;不要从不可信来源下载或执行应用程序。

  2. 减少漏洞

    安装补丁和主机加固是减少漏洞的主要方法。对系统应用打补丁是减轻操作系统和应用中已知漏洞的最通用的方法,补丁安装时应注意的主要问题详见8.2.2节。主机加固包括以下常用措施:减少不安全的文件共享,以降低感染恶意代码的风险;禁止或删除不需要的服务,以防止这些服务中可能包含的漏洞;从操作系统和应用中删除或修改缺省的用户ID和口令,以降低被恶意软件利用以获得对系统的非授权访问的可能;在允许访问网络服务前进行身份认证。

  3. 减轻威胁

    减轻威胁包括使用防病毒软件、间谍软件检测和删除工具、入侵检测/入侵防御系统、防火墙、路由器、应用设置,以及各种针对特定恶意代码的防护技术等。

    防病毒软件是减轻恶意软件威胁最常使用的技术控制措施。间谍软件检测和删除工具用于标识系统中的间谍软件,并且检疫隔离和去除这些间谍软件文件。入侵检测/入侵防御系统、防火墙和路由器等也能及时发现并阻止一些恶意软件的破坏活动。很多恶意软件利用了常见应用的功能。在缺省情况下,应用配置更偏向功能而不是安全,应加强应用安全的设置,包括Web客户端和服务器、电子邮件客户端和服务器、Office等办公软件等。

    阻断恶意代码的任意操作,使其无法执行,也是防止恶意代码危害的一种技术方法。恶意代码进入系统并实施攻击需要进行一系列操作。例如,利用系统漏洞进行缓冲区溢出、执行代码指令、写入配置文件、修改注册表等,这些操作必须全部完成,恶意代码才能驻留在系统中。如果其中个别操作无法完成,恶意代码就不可能破坏目标系统。又如,利用移动存储进行传播的恶意代码是借助了Windows系统默认的自动播放功能,恶意代码需要向移动存储介质中写入配置文件autorun.inf,如果预先在移动存储介质中生成了autorun.inf文件,且其权限为只读,那么恶意代码就无法再写入autorun.inf,从而起到预防的作用。

    此外,恶意代码为避免重复传播,其自身存在一种主动中止的机制,以保护运行环境的安全。恶意代码会在已经被感染的系统中设置相应的标记,在感染目标系统前,恶意代码会检测其是否已存在标记。如果发现目标系统存在标记,就主动中止传播。利用该机制,可以在系统中设置感染标记,以达到预防的目的。由于设置标记需要针对某种特定的恶意代码,因此,这种方法只能预防特定病毒,难以普遍使用。